#ifndef MENU_LIST_H
#define MENU_LIST_H

#include <ff.h>

//------------------------------------------------------------------------------
// MENU ITEM

#define MENU_ITEM_NAME_LENGTH   13

typedef struct {
    char name [MENU_ITEM_NAME_LENGTH];
    unsigned int flags;
} menu_item_t, *menu_item_p;

#define MENU_ITEM_IS_DIR    (1 << 0)

//------------------------------------------------------------------------------
// MENU LIST

typedef struct {
    int size;
    unsigned int flags;
    DIR dir;
} menu_list_t, *menu_list_p;

#define MENU_LIST_IS_ROOT   (1 << 0)

//------------------------------------------------------------------------------
// FUNCTIONS

menu_list_p menu_list_init (menu_list_p list, char * dir);

menu_item_p menu_list_get (menu_item_p, menu_list_p, unsigned int);

#endif /* MENU_LIST_H */
